草庐IT

while循环中的php sum变量

全部标签

c# - 编译器是否优化对 const 变量和文字 const 数字的操作?

假设我有一个带字段的类:constdoublemagicalConstant=43;这是代码中的某处:doublerandom=GetRandom();doubleunicornAge=random*magicalConstant*2.0;编译器是否会优化我的代码,使其不会在每次计算unicornAge时都计算magicalConstant*2.0?我知道我可以定义下一个将这个乘法考虑在内的常量。但这在我的代码中看起来更清晰。编译器对其进行优化是有意义的。 最佳答案 (这个问题是thesubjectofmybloginOctober

c# - 使用仅包含静态方法而不包含变量的 C# 类时会出现并发问题吗?

我是否正确理解所有线程都在自己的堆栈中复制方法变量,因此当从不同线程调用静态方法时不会出现问题? 最佳答案 是也不是。如果参数是值类型,那么是的,它们有自己的副本。或者,如果引用类型是不可变的,那么它就无法更改,您也没有问题。但是,如果参数是可变引用类型,则传入的参数仍然可能存在线程安全问题需要考虑。这有意义吗?如果您将引用类型作为参数传递,则它的引用是“按值”传递的,因此它是一个引用回旧对象的新引用。因此,您可能有两个不同的线程可能以非线程安全的方式更改同一个对象。如果这些实例中的每一个都是在使用它们的线程中仅创建和使用的,那么您

c# - 如何在我的 C# 项目中找到所有静态变量?

我想与多个线程并行运行我的命令行程序的某些部分,我担心可能会有一些我必须修复的静态变量(例如,通过使其成为[ThreadStatic]).是否有任何工具或简单的方法可以在我的项目中找到它们?当然,简单地搜索“static”并没有太大帮助:我有很多静态方法都可以很好地工作,并且可以在任意数量的线程中找到 最佳答案 注意:dasblinkenlight的答案仅适用于VisualStudio2010及更早版本。以下是针对VisualStudio2012及更新版本的翻译:静态(?([^\r\n])\s)+(\b(_\w+|[\w-[0-9_

c# - 在 Razor 中声明变量

这个问题在这里已经有了答案:HowtodeclarealocalvariableinRazor?(7个答案)关闭5年前。我想在foreach外添加一个变量,然后在foreach循环内使用它DateLocation@inti;@foreach(variteminModel){i=0;@Html.DisplayFor(modelItem=>item.DueDate)@Html.DisplayFor(modelItem=>item.location)}上面的例子我加了@inti;在foreach之外,我试图在foreach内部访问它,比如i=0;但它显示“名称'i'在当前上下文中不存在”如何

c# - 以编程方式构建 LINQ 查询而不用局部变量欺骗我

假设我的对象处于完美的工作状态(即TDD让我认为它们可以工作)。我有一个这样创建的列表(正确缩进除外):varresult=fromvinvendorsfrompinv.Productsorderbyp.Nameselectp;这行得通-我从所有供应商处获得了所有产品。现在我有了一个条件列表,由用户在运行时建立。让我们应用它们:foreach(AttributeainrequiredAttributes){result=result.Where(p=>p.Attributes.Contains(a));}这可能很原始,但我认为它会起作用。但是,在此foreach循环完成后,当您枚举“结

c# - 阻止访问私有(private)成员变量?强制使用公共(public)属性(property)?

我使用的是.NET2.0,因此无法访问自动属性。所以我必须求助于以下编码私有(private)变量和公共(public)属性的方法privatestringm_hello=null;publicstringHello{get{returnm_hello;}set{m_hello=value;}}对于上述private/public成员的包含类的方法,是否有限制访问private变量的方法?我不喜欢我可以使用m_hello或Hello。谢谢。 最佳答案 正如其他人所建议的那样,这应该是一个答案...当面向.NET2.0时,您仍然可以在

c# - 根据对象变量搜索对象列表

我有一个对象列表。这些对象具有三个变量,ID、名称和值。这个列表中可以有很多对象,我需要根据ID或Name找到一个,并更改值。示例classobjec{publicstringName;publicintUID;publicstringvalue;}ListTextPool=newList();我如何在TextPool中找到名称为“test”的条目并将其值更改为“Value”。真正的程序有更多的搜索选项和需要更改的值,所以我不能只使用字典(尽管名称和UID或唯一标识符)。任何帮助都会很棒 最佳答案 您可以使用LINQ找到它,然后直接

c# - 如何根据整数变量的值动态创建多个标签和文本框?

例如,当我们知道“n”的值时,是否有任何方法可以动态创建和显示带有“n”个相应文本框的“n”标签,例如,单击“显示”按钮。如果有什么让您不明白我的问题,请告诉我。谢谢!我正在使用VSC#Express2010WindowsForm。 最佳答案 我会创建一个用户控件,其中包含一个标签和一个文本框,然后简单地创建该用户控件的实例'n'次。如果您想知道更好的方法并使用属性从用户控件访问标签和文本框的值,请告诉我。简单的方法是:intn=4;//Orwhatevervalue-nhastobeglobalsothattheeventhand

c# - 语句 block 中的变量范围

for(inti=0;i根据我对范围的理解,第一个例子应该没​​问题。他们都不被允许的事实似乎更奇怪。当然'i'要么在范围内,要么不在范围内。是否有一些我不明白的关于范围的不明显的东西,这意味着编译器真的无法解决这个问题?或者只是保姆状态编译主义的一个例子? 最佳答案 Bymyunderstandingofscope,thefirstexampleshouldbefine.您对作用域的理解很好。这不是范围界定错误。这是简单名称错误的不一致使用。inti=10;//error,'i'alreadyexists这不是报告的错误。报告的错

C# 通过变量名获取和设置属性

有什么办法吗?我尝试测试对象的属性是否存在,如果存在,我想为其设置一个值。(也许完整的想法是错误的,如果是真的-为什么?)classInfo{publicstringX1{set;get;}publicstringX2{set;get;}publicstringX3{set;get;}}Dictionaryvalues=newDictionary();values.Add("X1","blah1");values.Add("X2","blah2");values.Add("NotThere","blah3");Infoinfo=newInfo();foreach(variteminva